1. Field of the Invention
The present invention relates to image rendering. In particular, the present invention relates to systems and methods for accurately recognizing a language format of an input imaging data stream when no explicit language switch is present.
2. Background and Related Art
Imaging devices, and many raster only devices, are currently available that only support a single language format, such as raster data that is specific to the device's printing engine. For such devices, the imaging data is based without prior checking to the print data interpreter. If the input is of the correct language format, all input is recognized and the job is outputted. Otherwise, when some or all of the input is not recognized, the job is not output. FIG. 1 illustrates a single language supported printer technique.
A multi-language supporting imaging device technique includes requiring an explicit language switch that precedes the imaging data. In this technique, some command or data is first read in a known or predetermined format that specifies to the imaging device the language format of the subsequent imaging data. For example, there are imaging devices that support explicit language switching by supporting the printer job language (PJL) command @ PJL ENTER LANGUAGE=<language>. If the specified language is supported by the device, the imaging data is then based to the corresponding interpreter. Otherwise, the input is rejected and the job is not outputted. FIG. 2 illustrates a multiple language supported printer technique.
Using an explicit language switch is limiting in a varied input environment where disparate generators of imaging data may not conform to a single convention for constructing an imaging job but otherwise generate imaging data that is compatible with the device. For example, a manufacturer of an imaging device may provide device drivers for one environment that use an explicit switching convention, but the device may be used in another environment that may generate imaging data without the use of an explicit language switch.
One technique is disclosed in U.S. Pat. No. 5,960,113. In this technique, an initial byte sample of the input stream is pre-read and passed to a language recognition process. For each supported language, there is a language specific recognition test, such as looking for a special signature in the byte sample. The technique applies each language specific recognition test in a predetermined sequential order until one acknowledges recognition of the language format. When then language is recognized, the input stream is then based to the corresponding language interpreter.
This technique still has the limiting factor in that it may not necessarily be efficient in finding the language, since the order of applying the language recognizers is predetermined. For example, the majority of the inputs to a device in one environment may be language A, but the associated language recognizer may be the last to test for. Thus, in such an environment, resources are initially consumed for languages that won't be recognized. FIG. 3 illustrates this type of technique.
Another technique is disclosed in U.S. Pat. No. 5,467,432. In this technique, an initial byte sample of the input stream is pre-read. The initial byte sample is then compared against a group of language recognizers (e.g., one per supported language). Each language recognizer looks for mode-determinative codes that are suggestive but not necessarily certain of the being part of the language. For each mode determinative code, a probability of the likelihood of being an indicator of the language is assigned. The process completes by summing up the probabilities of all the determinative codes found in the sample on a per language basis. The process then selects the language, which had the highest probability summation.
This technique is still limited in that it only guesses the correct language and thus is prone to selecting the wrong language. Secondly, the performance of the technique is inefficient in that all the languages must be tested before a selection is made. FIG. 4 illustrates this type of technique.
Thus, while techniques currently exist that are used to provide language switching, challenges still exist. Accordingly, it would be an improvement in the art to augment or even replace current techniques with other techniques.